realreport 1.9.0 → 1.9.1

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,5 +1,5 @@
1
1
  /*
2
- RealReport v1.9.0
2
+ RealReport v1.9.1
3
3
  Copyright (C) 2013-2024 WooriTech Inc.
4
4
  All Rights Reserved.
5
5
  */
@@ -1,7 +1,7 @@
1
1
  /// <reference types="pdfkit" />
2
2
  /**
3
- * RealReport v1.9.0
4
- * commit 3f834ed
3
+ * RealReport v1.9.1
4
+ * commit e3e1bcf
5
5
 
6
6
  * Copyright (C) 2013-2024 WooriTech Inc.
7
7
  https://real-report.com
@@ -9,10 +9,10 @@
9
9
  */
10
10
 
11
11
  /**
12
- * RealReport Core v1.9.0
12
+ * RealReport Core v1.9.1
13
13
  * Copyright (C) 2013-2024 WooriTech Inc.
14
14
  * All Rights Reserved.
15
- * commit bc11ef2f13fe4761f6f7f9459c9d8b0ad53d0310
15
+ * commit e944ba9c7ac33f1e7d9570f6e27e1c3636170b6a
16
16
  */
17
17
  type ConfigObject$1 = {
18
18
  [key: string]: any;
@@ -1518,6 +1518,31 @@ declare class AssetManager extends EventAware$1 {
1518
1518
  private $_addHighchart;
1519
1519
  }
1520
1520
 
1521
+ /** @internal */
1522
+ declare class DatetimeReader {
1523
+ static readonly Formats: string[];
1524
+ static readonly Default: DatetimeReader;
1525
+ static initialize(): void;
1526
+ private _format;
1527
+ private _type;
1528
+ private _parser;
1529
+ constructor(format: string);
1530
+ /** format */
1531
+ get format(): string;
1532
+ set format(value: string);
1533
+ /** amText */
1534
+ get amText(): string;
1535
+ set amText(value: string);
1536
+ /** pmText */
1537
+ get pmText(): string;
1538
+ set pmText(value: string);
1539
+ /** baseYear */
1540
+ get baseYear(): number;
1541
+ set baseYear(value: number);
1542
+ toDate(value: string): Date;
1543
+ private parse;
1544
+ }
1545
+
1521
1546
  interface IReportDataProvider {
1522
1547
  designTime?: boolean;
1523
1548
  preparePrint(ctx: PrintContext): void;
@@ -1582,7 +1607,25 @@ declare abstract class LinkableReportData extends ReportData$1 {
1582
1607
  save(target: object): void;
1583
1608
  protected abstract _doDataFetched(fetchedData: unknown): void;
1584
1609
  }
1610
+ type SimpleDataValueType = {
1611
+ [key: string]: any;
1612
+ };
1613
+ interface ISimpleDataField {
1614
+ fieldName: string;
1615
+ dataType?: 'string' | 'number' | 'boolean' | 'array' | 'object';
1616
+ source?: string;
1617
+ expression?: string;
1618
+ format?: string;
1619
+ description?: string;
1620
+ sample?: any;
1621
+ dateReader?: DatetimeReader;
1622
+ width?: number;
1623
+ children?: any;
1624
+ }
1585
1625
  interface ISimpleData extends IReportData {
1626
+ getField(index: number): ISimpleDataField;
1627
+ getFields(): ISimpleDataField[];
1628
+ getFieldByName(fieldName: string): ISimpleDataField;
1586
1629
  getValues(): any;
1587
1630
  getSaveValues(): any;
1588
1631
  }
@@ -1591,44 +1634,47 @@ interface ISimpleData extends IReportData {
1591
1634
  */
1592
1635
  declare class SimpleData extends LinkableReportData implements ISimpleData {
1593
1636
  private _isObj;
1594
- private _values;
1595
- constructor(name: string, values: any, link?: IReportDataLink);
1637
+ private _fields;
1638
+ private _linkedValues;
1639
+ private _embeddedValues;
1640
+ private get _values();
1641
+ private set _values(value);
1642
+ constructor(name: string, values: SimpleDataValueType, link?: IReportDataLink, fields?: ISimpleDataField[], dp?: IReportDataProvider);
1596
1643
  /**
1597
1644
  * TODO: array index
1598
1645
  */
1599
1646
  getValue(path?: string): any;
1600
1647
  getValues(): any;
1601
- get sample(): any;
1648
+ get sample(): SimpleDataValueType;
1649
+ get rowCount(): number;
1650
+ get fields(): ISimpleDataField[];
1651
+ get fieldCount(): number;
1602
1652
  setSample(values: any): void;
1603
1653
  getFieldNames(): string[];
1654
+ getFields(): ISimpleDataField[];
1655
+ getField(index: number): ISimpleDataField;
1656
+ getFieldByName(fieldName: string): ISimpleDataField;
1657
+ getFieldIndex(field: string): number;
1658
+ indexOfField(field: ISimpleDataField): number;
1659
+ setField(index: number, field: ISimpleDataField): void;
1660
+ getSaveFields(): ISimpleDataField[];
1661
+ getNextFieldName(prefix?: string): string;
1662
+ addField(index: number, field: ISimpleDataField): boolean;
1663
+ removeField(field: ISimpleDataField): boolean;
1664
+ dateToStr(field: ISimpleDataField, v: Date): string;
1665
+ /**
1666
+ * 특정 모드의 데이터를 일회성으로 조작하기 위한 편의성 메서드 (callback 실행 후 모드는 원복됨)
1667
+ */
1668
+ runInMode(mode: LinkableReportData['mode'], callback: (() => void) | Promise<void>): void;
1669
+ readValue(field: ISimpleDataField, value: any): any;
1604
1670
  getSaveType(): string;
1605
1671
  getSaveValues(): any;
1606
1672
  protected _doDataFetched(fetchedData: unknown): void;
1607
- }
1608
-
1609
- /** @internal */
1610
- declare class DatetimeReader {
1611
- static readonly Formats: string[];
1612
- static readonly Default: DatetimeReader;
1613
- static initialize(): void;
1614
- private _format;
1615
- private _type;
1616
- private _parser;
1617
- constructor(format: string);
1618
- /** format */
1619
- get format(): string;
1620
- set format(value: string);
1621
- /** amText */
1622
- get amText(): string;
1623
- set amText(value: string);
1624
- /** pmText */
1625
- get pmText(): string;
1626
- set pmText(value: string);
1627
- /** baseYear */
1628
- get baseYear(): number;
1629
- set baseYear(value: number);
1630
- toDate(value: string): Date;
1631
- private parse;
1673
+ setSource(source: SimpleDataValueType): void;
1674
+ private $_isSimpleValueType;
1675
+ private $_parseValue;
1676
+ private $_createField;
1677
+ private $_createFields;
1632
1678
  }
1633
1679
 
1634
1680
  /**@internal */
@@ -5535,6 +5581,40 @@ declare class I18nManager extends EventAware$1 {
5535
5581
  private $_fireDefaultLanguageChanged;
5536
5582
  }
5537
5583
 
5584
+ type FontSource = {
5585
+ name: string;
5586
+ source: string;
5587
+ fontWeight: FontWeight;
5588
+ format: FontFormat;
5589
+ };
5590
+ type UserFontSource = {
5591
+ name: string;
5592
+ source: string;
5593
+ fontWeight: FontWeight;
5594
+ };
5595
+ type FontWeight = 'normal' | 'bold';
5596
+ type FontFormat = 'truetype' | 'opentype' | 'woff';
5597
+ /**
5598
+ * FontManager 폰트 관련 리소스 관리
5599
+ * 폰트 관련 리소스를 base64로 보관하고 가져다 사용할 수 있도록 작성
5600
+ */
5601
+ declare class FontManager extends EventAware$1 {
5602
+ static readonly FONT_ADDED = "onFontManagerFontAdded";
5603
+ static readonly FONT_REMOVED = "onFontManagerFontRemoved";
5604
+ private _fontSources;
5605
+ constructor();
5606
+ protected _doDispose(): void;
5607
+ get fonts(): FontSource[];
5608
+ get fontNames(): string[];
5609
+ registerFonts(fontSources?: UserFontSource[]): Promise<void>;
5610
+ getFonts(name: string, weight?: FontWeight): FontSource[];
5611
+ getFontsByWeight(weight: FontWeight): FontSource[];
5612
+ private $_convertFontWeight;
5613
+ private $_convertFontType;
5614
+ private $_fireFontAdded;
5615
+ private $_fireFontRemoved;
5616
+ }
5617
+
5538
5618
  declare enum PaperSize {
5539
5619
  A0 = "A0",
5540
5620
  A1 = "A1",
@@ -5748,6 +5828,7 @@ declare class Report extends EventAware$1 implements IEditCommandStackOwner, IPr
5748
5828
  private _data;
5749
5829
  private _designData;
5750
5830
  private _i18n;
5831
+ private _fontManager;
5751
5832
  designTag: any;
5752
5833
  models: Record<number, ReportItem>;
5753
5834
  private _designTime;
@@ -5799,6 +5880,13 @@ declare class Report extends EventAware$1 implements IEditCommandStackOwner, IPr
5799
5880
  get designData(): DesignDataManager;
5800
5881
  /** i18n */
5801
5882
  get i18n(): I18nManager;
5883
+ /** fontManager */
5884
+ get fontManager(): FontManager;
5885
+ /**
5886
+ * Setter Injection인 이유는 리소스는 외부에서 한번만 생성후에 관리한다.
5887
+ * 새로운 리포트 모델을 생성할 때 폰트관련 리소스는 외부 정보이므로 주입받아서 사용하자.
5888
+ */
5889
+ set fontManager(fontManager: FontManager);
5802
5890
  /** canUndo */
5803
5891
  get canUndo(): boolean;
5804
5892
  /** canRedo */
@@ -9243,9 +9331,9 @@ declare class PrintContainer extends VisualContainer$1 {
9243
9331
  }
9244
9332
 
9245
9333
  interface PdfFont {
9246
- file: string;
9247
9334
  name: string;
9248
9335
  content: string;
9336
+ file?: string;
9249
9337
  style?: 'normal' | 'italic';
9250
9338
  weight?: 'normal' | 'bold';
9251
9339
  }