realreport 1.11.3 → 1.11.5

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.
@@ -1,9 +1,24 @@
1
1
  /*
2
- RealReport v1.11.3
2
+ RealReport v1.11.5
3
3
  Copyright (C) 2013-2025 WooriTech Inc.
4
4
  All Rights Reserved.
5
5
  */
6
- @charset "UTF-8"; .rr-report-root {
6
+ @charset "UTF-8";
7
+ sup {
8
+ vertical-align: super;
9
+ }
10
+
11
+ sub {
12
+ vertical-align: sub;
13
+ }
14
+
15
+ sub, sup {
16
+ font-size: smaller;
17
+ top: 0;
18
+ line-height: normal;
19
+ }
20
+
21
+ .rr-report-root {
7
22
  font-family: "Malgun Gothic", "맑은 고딕", AppleSDGothicNeo-Light, sans-serif;
8
23
  font-size: 13px;
9
24
  line-height: normal;
@@ -507,6 +522,7 @@ border: 1px dotted #00000020; */
507
522
  }
508
523
 
509
524
  .rr-text > span {
525
+ width: 100%;
510
526
  pointer-events: none;
511
527
  }
512
528
 
@@ -549,6 +565,10 @@ border: 1px dotted #00000020; */
549
565
  width: 100%;
550
566
  }
551
567
 
568
+ .rr-summary > span {
569
+ width: 100%;
570
+ }
571
+
552
572
  .qrcode-empty:before {
553
573
  content: "[QR]";
554
574
  white-space: nowrap;
@@ -1706,12 +1726,12 @@ border-bottom: 1px solid #ccc; */
1706
1726
  display: flex;
1707
1727
  align-items: center;
1708
1728
  stroke-width: 1.5px;
1709
- stroke: var(--light-theme-icon-color);
1729
+ stroke: #f3f3f3;
1710
1730
  cursor: pointer;
1711
1731
  }
1712
1732
 
1713
- .rr-border-direction-icons-container:hover {
1714
- background: var(--rrd-light-theme-primary-color-4);
1733
+ .rr-border-direction-icons-container:hover>svg {
1734
+ opacity: 0.8;
1715
1735
  }
1716
1736
 
1717
1737
  @keyframes fade-out {
@@ -1,7 +1,7 @@
1
1
  /// <reference types="pdfkit" />
2
2
  /**
3
- * RealReport v1.11.3
4
- * commit 8ce7c84
3
+ * RealReport v1.11.5
4
+ * commit 3e5a269
5
5
 
6
6
  * {@link https://real-report.com}
7
7
  * Copyright (C) 2013-2025 WooriTech Inc.
@@ -11,10 +11,10 @@
11
11
  import { Cvfo, Style } from 'exceljs';
12
12
 
13
13
  /**
14
- * RealReport Core v1.11.3
14
+ * RealReport Core v1.11.5
15
15
  * Copyright (C) 2013-2025 WooriTech Inc.
16
16
  * All Rights Reserved.
17
- * commit 645ea5b84a0ca9591145ea337113c4aeade413ed
17
+ * commit 64e86b91b35738ca3d161877acf177c58c67ffda
18
18
  */
19
19
 
20
20
 
@@ -5821,23 +5821,37 @@ declare abstract class TextItemBase extends ReportItem {
5821
5821
  declare class TextItem extends TextItemBase {
5822
5822
  static readonly PROP_MULTI_LINE = "multiLine";
5823
5823
  static readonly PROP_TEXT = "text";
5824
+ static readonly PROP_WORD_BREAK = "wordBreak";
5824
5825
  static readonly PROP_ON_GET_CONTEXT_VALUE = "onGetContextValue";
5825
5826
  static readonly PROP_I18N = "internationalization";
5826
5827
  static readonly PROP_MERGE_RULE = "mergeRule";
5827
5828
  static readonly PROP_RICH = "rich";
5829
+ static readonly PROP_ON_GET_COL_SPAN = "onGetColSpan";
5830
+ static readonly PROP_AUTO_SHRINK = "autoShrink";
5828
5831
  static readonly PROPINFOS: IPropInfo[];
5829
5832
  static readonly $_ctor: string;
5830
5833
  static readonly ITEM_TYPE = "Text";
5834
+ private _autoShrink;
5831
5835
  private _text;
5836
+ private _wordBreak;
5832
5837
  private _rich;
5833
5838
  private _editing;
5834
5839
  private _i18nObject;
5835
5840
  private _mergeRule;
5836
5841
  private _contextValueCallback;
5837
5842
  private _onGetContextValue;
5843
+ private _colSpanCallback;
5844
+ private _onGetColSpan;
5838
5845
  private _contextValueCallbackFunc;
5839
5846
  private _contextValueCallbackDelegate;
5847
+ private _colSpanCallbackFunc;
5848
+ private _colSpanCallbackDelegate;
5840
5849
  constructor(name: string, text?: string);
5850
+ /**
5851
+ * wordBreak
5852
+ */
5853
+ get wordBreak(): WordBreak;
5854
+ set wordBreak(value: WordBreak);
5841
5855
  /**
5842
5856
  * text
5843
5857
  */
@@ -5869,7 +5883,29 @@ declare class TextItem extends TextItemBase {
5869
5883
  */
5870
5884
  get contextValueCallback(): ContextValueCallback;
5871
5885
  set contextValueCallback(value: ContextValueCallback);
5886
+ /**
5887
+ * onGetColSpan
5888
+ */
5889
+ get onGetColSpan(): string;
5890
+ set onGetColSpan(value: string);
5891
+ /**
5892
+ * colSpanCallback
5893
+ */
5894
+ get colSpanCallback(): ReportItemColSpanCallback;
5895
+ set conSpanCallback(value: ReportItemColSpanCallback);
5896
+ /**
5897
+ * 자동 폰트 사이즈 조정.
5898
+ * 설정 시 텍스트가 설정된 사이즈를 초과하는 경우
5899
+ * 자동적으로 사이즈를 조정하여 모든 텍스트가 보여지도록 하는 설정입니다.
5900
+ */
5901
+ get autoShrink(): boolean;
5902
+ set autoShrink(value: boolean);
5872
5903
  getDesignText2(system: boolean): string;
5904
+ /**
5905
+ * value 값은 onGetValueCallback에서 계산된 값이다.
5906
+ * @returns {number | null}
5907
+ */
5908
+ runColSpanCallback(ctx: PrintContext, value: any): number | undefined;
5873
5909
  get printEditable(): boolean;
5874
5910
  getSaveType(): string;
5875
5911
  get outlineLabel(): string;
@@ -7717,6 +7753,9 @@ declare class ExcelDataBandDataRow extends ExcelDataBandSection {
7717
7753
  get pathLabel(): string;
7718
7754
  getHiddenText(): string;
7719
7755
  writeAll(ctx: ExcelPrintContext, drows?: number[]): IExcelCell[];
7756
+ /**
7757
+ * Group용 데이터 행 작성
7758
+ */
7720
7759
  writeRow(ctx: ExcelPrintContext, drow: number, col: number): IExcelCell[];
7721
7760
  protected _getSectionType(): BandSectionType;
7722
7761
  private $_writeRow;
@@ -10240,6 +10279,7 @@ declare class TableBodyLine {
10240
10279
  get rows(): HTMLTableRowElement[];
10241
10280
  get(index: number): HTMLTableRowElement;
10242
10281
  getCell(r: number, c: number): HTMLTableCellElement;
10282
+ getRowByPrintRow(printRow: number): HTMLTableRowElement;
10243
10283
  appendTo(target: HTMLElement, minRowHeight?: number): void;
10244
10284
  insertTo(body: HTMLTableSectionElement, to?: number): void;
10245
10285
  detach(): void;
@@ -10350,6 +10390,11 @@ declare class TableBandPrintInfo extends BandPrintInfo<TableBand> {
10350
10390
  private $_addHeader;
10351
10391
  private $_addFooter;
10352
10392
  private $_addEndRow;
10393
+ /**
10394
+ * - TODO: TableDataRow의 rowcount가 2 이상이라면 제한두고 처리 필요
10395
+ */
10396
+ private $_applyMergeCells;
10397
+ private $_findDataRowElement;
10353
10398
  /**
10354
10399
  * 왼쪽에서 오른쪽으로 먼저 끝에서 첫번째 컬럼으로 다시.
10355
10400
  * 최대한 모든 컬럼에 골고루 배치.
@@ -10918,6 +10963,7 @@ declare abstract class TextItemElementBase<T extends TextItemBase> extends Repor
10918
10963
  static readonly CLASS_NAME = "rr-text";
10919
10964
  static readonly CLASS_LIST: string;
10920
10965
  static readonly SPAN = "_rr_span_";
10966
+ static readonly MIN_FONT_SIZE = 5;
10921
10967
  get span(): HTMLSpanElement;
10922
10968
  private _span;
10923
10969
  protected _text: string;
@@ -10926,6 +10972,7 @@ declare abstract class TextItemElementBase<T extends TextItemBase> extends Repor
10926
10972
  protected _initDom(doc: Document, dom: HTMLElement): void;
10927
10973
  protected _doPrepareMeasure(ctx: PrintContext, dom: HTMLElement): void;
10928
10974
  protected _doMeasure(ctx: PrintContext, dom: HTMLElement, hintWidth: number, hintHeight: number): Size$1;
10975
+ protected _doAfterMeasure(ctx: PrintContext, dom: HTMLElement, hintWidth: number, hintHeight: number, size: Size$1): void;
10929
10976
  _doLayoutContent(ctx: PrintContext): void;
10930
10977
  refreshPrintValues(ctx: PrintContext): void;
10931
10978
  isDom(dom: HTMLElement): boolean;
@@ -10946,6 +10993,7 @@ declare class TextItemElement extends TextItemElementBase<TextItem> {
10946
10993
  setEditText(report: ReportBase, text: string): void;
10947
10994
  protected _getPrintText(ctx: PrintContext, model: TextItem): string;
10948
10995
  protected _doMeasure(ctx: PrintContext, dom: HTMLElement, hintWidth: number, hintHeight: number): Size$1;
10996
+ protected _doAfterMeasure(ctx: PrintContext, dom: HTMLElement, hintWidth: number, hintHeight: number, size: Size$1): void;
10949
10997
  isDom(dom: HTMLElement): boolean;
10950
10998
  }
10951
10999
 
@@ -13144,6 +13192,10 @@ type ReportItemStyleCallback = (ctx: PrintContextBase, item: ReportItem, row: nu
13144
13192
  [key: string]: string | undefined;
13145
13193
  };
13146
13194
  type ReportItemVisibleCallback = (ctx: PrintContextBase, item: ReportItem, row: number, value: any) => boolean;
13195
+ /**
13196
+ * - Table Band 아이템에서 셀 안에 TextItem일 경우 사용가능한 ColSpanCallback
13197
+ */
13198
+ type ReportItemColSpanCallback = (ctx: PrintContextBase, item: ReportItem, row: number, value: any) => number;
13147
13199
  /**
13148
13200
  * Report 구성 요소 기반 클래스.
13149
13201
  *
@@ -14643,6 +14695,10 @@ declare enum PrintUnit {
14643
14695
  CENTI = "cm",
14644
14696
  MILLI = "mm"
14645
14697
  }
14698
+ declare enum WordBreak {
14699
+ BREAK_ALL = "break-all",
14700
+ BREAK_WORD = "break-word"
14701
+ }
14646
14702
  type ValueString = string | number;
14647
14703
  type Styles = {
14648
14704
  [key: string]: string | undefined;
@@ -14973,6 +15029,7 @@ declare class PrintContainer extends PrintContainerBase {
14973
15029
  protected _doPrepareContainer(doc: Document, dom: HTMLElement): void;
14974
15030
  protected _doResized(): void;
14975
15031
  private $_refreshContextValues;
15032
+ private $_adjustContainerToPage;
14976
15033
  private $_replacePages;
14977
15034
  private $_refreshHtmlItemValue;
14978
15035
  private $_printReport;
@@ -15161,6 +15218,41 @@ declare class Email extends Report {
15161
15218
  protected _createPage(): ReportPage;
15162
15219
  }
15163
15220
 
15221
+ declare class ExcelPrintContainer extends PrintContainerBase {
15222
+ private _context;
15223
+ private _indicator;
15224
+ private _printView;
15225
+ private _reportView;
15226
+ private _reportViews;
15227
+ private _contexts;
15228
+ private _pages;
15229
+ private _pageToGo?;
15230
+ private _cells;
15231
+ private _heights;
15232
+ get reportView(): ExcelReportView;
15233
+ get reportViews(): ExcelReportView[];
15234
+ get printView(): SheetPrintView;
15235
+ get context(): ExcelPrintContext;
15236
+ print(options: IPrintOptions): void;
15237
+ printSingle(options: IPrintOptions): void;
15238
+ printAll(options: IPrintOptions): void;
15239
+ get isPrinted(): boolean;
15240
+ /** pageCount */
15241
+ get pageCount(): number;
15242
+ /** page */
15243
+ get page(): number;
15244
+ set page(value: number);
15245
+ get pages(): PrintPage[];
15246
+ fitToWidth(): void;
15247
+ fitToHeight(): void;
15248
+ fitToPage(): void;
15249
+ getCurrentPage(scrollHeight: number, scrollTop: number): number;
15250
+ loadAsyncLoadableElements(): Promise<void>;
15251
+ protected _doPrepareContainer(doc: Document, dom: HTMLElement): void;
15252
+ private $_printReport;
15253
+ private $_getPageHeight;
15254
+ }
15255
+
15164
15256
  /**
15165
15257
  * 데이터 필드의 데이터 자료형
15166
15258
  *
@@ -49049,7 +49141,7 @@ type ErrorParams = {
49049
49141
  declare abstract class ReportViewBase {
49050
49142
  protected _options: ReportOptions;
49051
49143
  protected _cm: boolean;
49052
- protected _container: PrintContainer | undefined;
49144
+ protected _container: PrintContainer | ExcelPrintContainer | undefined;
49053
49145
  protected _currentPage: number;
49054
49146
  protected _containerId: string;
49055
49147
  constructor(container: string | HTMLDivElement, options?: ReportOptions);
@@ -49069,6 +49161,7 @@ declare abstract class ReportViewBase {
49069
49161
  errorParams: ErrorParams;
49070
49162
  }[]): void;
49071
49163
  protected _checkPrintContainerZoom(): void;
49164
+ protected _createContainer(container: string | HTMLDivElement): PrintContainer | ExcelPrintContainer;
49072
49165
  get containerId(): string;
49073
49166
  set containerId(container: string | HTMLDivElement);
49074
49167
  get version(): string;
@@ -49102,16 +49195,17 @@ declare abstract class ReportViewBase {
49102
49195
  declare class ReportViewer extends ReportViewBase {
49103
49196
  private _reportForm?;
49104
49197
  private _dataSet?;
49105
- protected _report: Report | Email;
49198
+ protected _report: ExcelReport | Email | Report;
49106
49199
  private _reportDataProvider;
49107
49200
  private _isPaging;
49108
49201
  private _reportViewPrinter;
49109
49202
  private _reportViewExporter;
49110
49203
  constructor(container: string | HTMLDivElement, reportForm?: ReportForm, dataSet?: ReportDataSet, options?: ReportOptions);
49111
49204
  protected _setReportForm(data: ReportForm | ReportForm[]): void;
49205
+ protected _createContainer(container: string | HTMLDivElement): PrintContainer | ExcelPrintContainer;
49112
49206
  get reportForm(): ReportForm;
49113
49207
  set reportForm(form: ReportForm);
49114
- get report(): Report | Email;
49208
+ get report(): ExcelReport | Email | Report;
49115
49209
  get dataSet(): ReportDataSet;
49116
49210
  set dataSet(v: ReportDataSet);
49117
49211
  get isPaging(): boolean;
@@ -49165,6 +49259,15 @@ declare class ReportViewer extends ReportViewBase {
49165
49259
  * API 링크가 있는 데이터는 받아온 후에 사용자가 넘겨준 데이터에서 교체한다.
49166
49260
  */
49167
49261
  private $_prepareLinkData;
49262
+ /**
49263
+ * Report(일반 리포트, 이메일 리포트) 타입인지 시트리포트 타입인지를 확인합니다.
49264
+ */
49265
+ private $_isReport;
49266
+ /**
49267
+ * 현재 리포트가 문서(pptx, hwp, docs)를 지원하는지 여부를 결정합니다.
49268
+ */
49269
+ private $_hasSupportDocument;
49270
+ private $_changeContainer;
49168
49271
  }
49169
49272
 
49170
49273
  /** REPORT CORE */